<!doctype html>
<meta charset=utf-8>
<title>IndexedDB: IDBObjectStore index() when transaction is finished</title>
<link rel="help" href="https://w3c.github.io/IndexedDB/#dom-idbobjectstore-index">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="resources/support.js"></script>
<script>

indexeddb_test(
  (t, db) => {
    const store = db.createObjectStore('store');
    store.createIndex('index', 'key_path');
  },
  (t, db) => {
    const tx = db.transaction('store', 'readonly', {durability: 'relaxed'});
    const store = tx.objectStore('store');
    tx.abort();
    assert_throws_dom('InvalidStateError', () => store.index('index'),
                      'index() should throw if transaction is finished');
    t.done();
  },
  'IDBObjectStore index() behavior when transaction is finished'
);

</script>
